The field of the invention is motor controllers and more specifically methods and apparatuses for correcting phase and magnitude errors in motor control signals that result from cable/supply line charging effects. will indicate a signal associated with a stator q-axis in a d-q frame of reference.
Throughout this specification a “*” will indicate a command signal, “ds” and “qs” subscripts will indicate signals associated with a stator q-axis in a d-q frame of reference, “u”, “v” and “w” subscripts will indicate values associated with three separate motor phases also referred to as u, v and w phases, a “f” subscript will indicate a feedback signal, a “s” subscript will indicate a motor stator quantity, a “NP” subscript will indicate a name plate value, an “a” subscript will indicate an angle, a “mag” subscript will indicate a magnitude value, an “o” subscript will indicate an output value and a “pd” subscript will indicate a predetermined or target value.
Referring to FIG. 1, a diagram 10 of a motor 14 and associated field oriented control (FOC) system is illustrated where the system includes a controller 11 and a pulse width modulating (PWM) inverter 12 linked to motor 14 via three voltage supply lines/cables 16, 18 and 20. In addition, simplified system 10 includes two input lines for supplying a command d-axis current Ids* and a torque command value or signal Te* and two current sensors 22 and 24 that sense currents on lines 18 and 20 and provide feedback currents Ivf and Iwf to controller 11.
Generally, controller 11 is programmed to receive the command values Te* and Ids* and use those values to generate voltages on supply lines 16, 18 and 20 that cause motor 14 to rotate in a manner that is consistent with the input command values. Feedback signals Ivf and Iwf form a closed loop that helps to drive motor 14 in the intended fashion. To this end, feedback signals Ivf and Iwf are converted into signals that can be compared to either the command signals or to derivatives of the command signals. Any differences between the commanded operating parameters and the feedback parameters are used to alter voltages applied across the supply lines appropriately. Thus, motor 14 rotates when a suitable torque command Te* and d-axis current command Ids* are provided. Similarly, torque command Te* may be set to zero and mechanical losses will then halt motor rotation.
As well known in the controls art, voltage equations in a d-q frame of reference can be expressed as follows:Vqs=rsIqs+ωeLsIds+dλqs/dt  Eq. 1 Vds=rsIds−ωeLσIqs+dλds/dt  Eq. 2 where rs is a stator resistance value, ωe is a command frequency, Ls is a stator inductance, Lσ is a leakage inductance, λqs and λds are flux values and Iqs and Ids are q and d-axis currents, respectively.
Referring still to FIG. 1, the detail shown in controller 11 represents a common control algorithm for implementing Equations 1 and 2 above. To this end, controller 11 includes six summers 28, 34, 60, 58, 66 and 38, scalar gain values represented by blocks 30, 32, 44, 50, 54, 48 and 64, two multipliers 46 and 52, a torque to q-axis current converter 56, a proportional-integral (PI) regulator 62, an integrator 42, a polar converter 36, a polar to three phase converter 40 and a 3 to 2 phase converter 70.
Converter 70 receives feedback current signals Ivf and Iwf from line current sensors 24 and 26, uses the two received signals to determine the current in the third line 16 and converts the three phase currents to two phase d and q-axis feedback currents Idsf and Iqsf, respectively. D-axis current Idsf is provided to summer 28 and q-axis current Iqsf is provided to summer 60 and also to derivative with respect to time block 63.
D-axis command current Ids* is provided to summer 28 and the feedback current Idsf is subtracted therefrom to generate a d-axis current error signal Idse that is provided to and scaled by gain block 30. The scaled value generated by gain block 30 represents the change in d-axis flux with respect to time (i.e., the third term dλds/dt in Equation 2 above). The output of gain block 30 is provided to each of summer 34 and gain block 48.
Gain block 48 scales the received value thereby generating a value that represents the change in q-axis flux with respect to time (i.e., the third term dλqs/dt in Equation 1 above) which is provided to summer 58. Command current Ids* is also provided to stator resistance gain block 32 and to stator inductance gain block 50, the outputs of which are provided to summer 34 and multiplier block 52, respectively.
Command torque value Te* is provided to converter 56 and, as the label implies, converter 56 converts command torque value Te* to a q-axis command current value Iqs* Command current value Iqs* is provided to each of leakage inductance gain block 44, stator resistance gain block 54 and summer 60. The outputs of blocks 44 and 54 are provided to multiplier 46 and summer 58, respectfully.
Summer 60 subtracts q-axis current feedback value Iqsf from command current value Iqs* to generate a q-axis current error value that is provided to regulator 62. Regulator 62 scales the received error signal to generate a command frequency value ωe which is provided to each of multipliers 46 and 52 and summer 66.
Multiplier 46 multiplies the received values from block 44 and regulator 62 and provides its output to summer 34. Consistent with Equation 2 above, summer 34 subtracts value ωeLσIqs (i.e., the output of multiplier 46) from the sum of the output values from gain blocks 32 and 30 to generate a d-axis voltage value Vds. Voltage value Vds is provided to polar converter 36. Similarly, multiplier 52 multiplies the values received from block 50 and regulator 62 and provides its output to summer 58. Summer 58 adds the received values to generate q-axis voltage value Vqs which is provided to polar converter 36.
Converter 36 converts the d and q-axis voltage values to a voltage magnitude signal Vmag and a voltage angle signal Va. Magnitude signal Vmag is provided to polar to three phase converter 40 and angle signal Va is provided to summer 38.
Referring still to FIG. 1, block 63 takes the derivative of feedback current Iqsf thereby generating a compensation frequency in radians per second which is scaled by gain kd at block 64. Summer 66 subtracts the scaled derivative of the q-axis feedback current value generated by block 64 from the output of regulator 62 and provides its output value to integrator 42. Integrator 42 integrates the received value to provide an electrical angle θe to summer 38. Summer 38 adds the voltage angle Va and the electrical angle θe and provides its output to converter 40. Converter 40 converts the received magnitude value Vmag and adjusted angle value to three phase command values that are used to drive PWM inverter 12.
Methods for determining inductance values Ls and Lσ are known in the art and will not be explained here in detail. Resistance value rs is typically determined during a commissioning procedure by driving motor 14 with a name plate current INP at zero electrical frequency using both the d and q-axis current regulators, measuring an auto-tune voltage value Vat1 (e.g., the output of a closed loop current regulator) and then solving the following equation:rs=Vat1/INP  Eq. 3 After determining resistance value rs, that value is stored for subsequent use during motor control.
According to some control algorithms d-axis command current value Ids* is determined during a commissioning procedure by disconnecting the motor load from motor 14 and operating controller 11 at some reasonable operating frequency such as 75% of the rated motor name plate frequency. The resulting motor current is the no-load value of Ids*.
As well known in the motor control art, PWM inverters like inverter 12 include a plurality of switching devices that are controlled by controller 11 to generate voltage waveforms on supply cables 16,18 and 20. With the advent of high speed switching devices and associated advantages, most power electronic inverters are now controlled so as to switch at very high speeds. Unfortunately, when high frequency switching is used to drive a motor 14 through relatively long cables (e.g., several hundred feet), parasitic capacitance within the cables 16, 18 and 20 becomes significant. In fact, depending on the magnitude of the characteristic impedance of a cable configuration and system grounding, inverter 12 may have to provide a significant amount of energy to cables 16, 18 and 20 just to charge and discharge the cable capacitance. For a detailed explanation of cable charging and discharging phenomenon at high PWM switching frequencies see R. Kerkman, D. Leggate, G Skibinski, “Interaction of Drive Modulation and Cable Parameters on AC Motor Transients”, IEEE Transactions on Industry Applications, Vol. 33, No. 3, May/June 1997, pp. 722-731.
Experience has shown that cable charging and discharging will, under certain circumstances, alter the switching characteristics of the power switching devices in PWM inverter 12. To this end, referring again to FIG. 1, it has been observed that, where cables 16, 18 and 20 are long (e.g., 500 feet) so that associated capacitance is appreciable, the feedback currents Ivf and Iwf at motor 14 (e.g., where the current sensors are located) are different than the currents provided by inverter 12 to the cables.
After cables 16, 18 and 20 become charged, the charged cables often generate unintended currents at the motor ends of the cables that are sensed by feedback sensors 24 and 26 and which end up hampering control efforts. At normal operating frequencies, while this phenomenon occurs, the distorting effect is relatively minimal due to the magnitude differences between the capacitive charge currents and the intended/generated currents. At low speeds, however, the distorting effects have larger relative magnitude, are more noticeable and have adverse effects on control. Specifically, when the torque command Te* is set to zero to stop motor 14, it has been observed that the feedback currents cause controller 11 to continue to generate non-zero torque and hence it is difficult to drive the motor to a stopped condition.
In this regard see FIG. 2 where two system characteristics are illustrated that were generated using a control algorithm similar to that illustrated in FIG. 1 with a 5 HP, 460 Volt AC, 4 pole motor and 11.0 Arms inverter with 600 feet of shielded motor cables 16, 18 and 20. The characteristics in FIG. 2 include a torque command value Te* and a resulting per unit operating or motor frequency fo. It can be seen that at time τ1 a step torque command is provided and frequency fo begins to rise as expected. At time τ2, torque command signal Te* is set equal to zero and frequency fo begins to drop toward a zero value. However, at approximately time τ3, despite the zero torque value, output frequency fo levels off at approximately 0.07 p.u.
Inability to reach a zero frequency after cable charging occurs is exacerbated by a d-axis command voltage error that is associated with the cable charging phenomenon described above. To this end, when torque command signal Te* is zero, Equations 1 and 2 above can be simplified as:Vqs=ωeLsIds+dλqs/dt  Eq. 4 Vds=rsIds  Eq. 5 Examining equations 4 and 5 it should be appreciated that with a zero torque command value, the applied voltage is dominated by the stator resistance drop and the correct value of Ids. Thus, under test conditions with long cables and zero torque command, the open loop applied voltage in both the d-axis and the q-axis depend on the d-axis voltage resulting in the correct value of Ids.
Referring still to Equation 5, as indicated above, resistance value rs is determined during a commissioning procedure using the rated motor name plate current. Importantly, the commissioning test for stator resistance value rs described above uses both the d and q-axis current regulators to identify resistance value rs. The control method for normal system operation does not use both regulators and therefore actual values of d and q-axis currents cannot be forced to be identical to the commanded values. As discussed above, the cable charging effects distort the applied voltages on the motor terminals resulting in d-axis feedback current Idsf that is generally greater than d-axis command current value Ids* at low operating frequencies without both the d and q-axis current regulators. Thus, the system described above generates an incorrect voltage value Vds.
In addition to the effects of charging on long cables it is also believed that other drive operating characteristics can have exacerbating effects on the Vds error. For instance, there is at least some evidence that non-ideal power device characteristics may add to the Vds error described above.